#include <string.h>

namespace glf {

#ifndef GLF_HAS_STRRCHR_CONST
const char* Strrchr(const char * str, int ch) {
	return ::strrchr(str, ch);
}
#define GLF_HAS_STRRCHR_CONST
#endif

#ifndef GLF_HAS_STRRCHR
char* Strrchr(char * str, int ch) {
	return ::strrchr(str, ch);
}
#define GLF_HAS_STRRCHR
#endif

#ifndef GLF_HAS_STRCHR_CONST
const char* Strchr(const char * str, int ch) {
	return ::strchr(str, ch);
}
#define GLF_HAS_STRCHR_CONST
#endif

#ifndef GLF_HAS_STRSTR_CONST
const char * Strstr(const char * str1, const char * str2)
{
	return ::strstr(str1, str2);
}
#define GLF_HAS_STRSTR_CONST
#endif

#ifndef GLF_HAS_STRSTR
char * Strstr(char * str1, char * str2)
{
	return ::strstr(str1, str2);
}
#define GLF_HAS_STRSTR
#endif

char* Strcpy(char* dst, const char* src) {
	return ::strcpy(dst, src);
}
#define GLF_HAS_STRCPY

int Strcmp(const char* str1, const char* str2) {
	return ::strcmp(str1, str2);
}
#define GLF_HAS_STRCMP

int Strncmp(const char* str1, const char* str2, size_t n) {
	return ::strncmp(str1, str2, n);
}
#define GLF_HAS_STRNCMP

	int Strcpy_s(char* dst, size_t N, const char* src) {
		::strcpy(dst, src);
		return 0;
	}
#define GLF_HAS_STRCPY_S
	
	errno_t Strncpy_s(char* dst, size_t maxDst, const char* src, size_t count) {
		
		::strcpy(dst, src);
		return 0;
	}
#define GLF_HAS_STRNCPY_S

}

